
/**
 * AppleIIGo
 * NIB Disk Image class
 * (C) 2008 by Marc S. Ressl (mressl@umich.edu)
 * Released under the GPL
 */

#include "NibbleDiskImage.h"
#include "FDIDiskImage.h"

#ifndef NIBDISKIMAGE_H
#define NIBDISKIMAGE_H

#define NIB_TRACK_BYTENUM		0x1a00

class NIBDiskImage : public NibbleDiskImage {
public:
	static bool isDiskImageValid(UINT32 diskType, UINT32 diskImageByteNum);
	
	NIBDiskImage(char * diskImagePath,
				 UINT32 diskImageOffset,
				 UINT32 diskImageByteNum,
				 bool isForceWriteProtected);
	~NIBDiskImage();
	
private:
	bool readDiskImageTrack(UINT32 diskImageTrackIndex, bool isSetTrackBitNum);
	bool readDiskImage(UINT32 diskImageOffset, UINT32 diskImageByteNum,
					   bool isSetTrackBitNum);
};

#endif
